/**
 * 
 */
package cl.duocap.refaxion.view.bean;


import java.io.FileOutputStream;
import java.io.Serializable;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import cl.duocap.refaxion.dto.OrdenTrabajoDTO;
import cl.duocap.refaxion.dto.PaqueteDTO;
import cl.duocap.refaxion.dto.RepuestoDTO;
import cl.duocap.refaxion.dto.ServicioDTO;
import cl.duocap.refaxion.dto.TallerDTO;
import cl.duocap.refaxion.dto.UsuarioDTO;
import cl.duocap.refaxion.dto.VehiculoDTO;
import cl.duocap.refaxion.servicios.OrdenTrabajoService;
import cl.duocap.refaxion.servicios.PaqueteService;
import cl.duocap.refaxion.servicios.RepuestoService;
import cl.duocap.refaxion.servicios.ServicioService;
import cl.duocap.refaxion.servicios.TallerService;
import cl.duocap.refaxion.servicios.UsuarioService;
import cl.duocap.refaxion.servicios.VehiculoService;

import com.itextpdf.text.Document;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;


/**
 * @author rentonx
 *
 */
@ManagedBean (name = "formOrdenDeTrabajoBean")
@SessionScoped
public class FormOrdenDeTrabajoBean implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private List<UsuarioDTO> listaClientesObtenidos = new ArrayList<UsuarioDTO>();
	private List<VehiculoDTO> listaVehiculosAsociados = new ArrayList<VehiculoDTO>();
	private List<VehiculoDTO> listaVehiculosAsociados1 = new ArrayList<VehiculoDTO>();
	
	private List<PaqueteDTO> listaPaquetesObtenidos = new ArrayList<PaqueteDTO>();
	
	
	private UsuarioDTO clienteSeleccionadoOT;
	private VehiculoDTO vehiculoSeleccionadoOT;
	private PaqueteDTO paqueteAsignadoOT;
	
	private String rutBuscado;
	private String nombreBuscado;
	
	private int idPaqueteBuscado;
	private String nombrePaqueteBuscado;
	
	private boolean desabilitado = true; 
	private boolean desabilitadoOrden = false;
	private OrdenTrabajoDTO ordenTrabajoNueva;
	
	private List<String> listaServiciosSel;
	private Map<String, Integer> listadoServicios;
	private List<ServicioDTO> listaServiciosSelEnGrilla = new ArrayList<ServicioDTO>();
	private List<ServicioDTO> listadoServiciosObtenidos;
	private int servicioPorQuitar;
	private int serviciosSumaTotalPrecio = 0;
	private int servicioPrecio = 0;
	
	private List<String> listaRepuestosSel;
	private List<RepuestoDTO> listaRepuestosSelDto;
	private List<RepuestoDTO> listaRepuestosSelEnGrilla = new ArrayList<RepuestoDTO>();
	private List<RepuestoDTO> listadoRepuestosObtenidos;
	private Map<String, Integer> listadoRepuestos;
	private int repuestosSumaTotalPrecio = 0;
	private int repuestoPrecio = 0;
	private int repuestoPorQuitar;
	
	private int precioOTTotalCalculado=0;
	private int precioOTTotalFinal=0;
	private int descuentoAplicado = 0;
	private int idMaximoOTNuevo;
	
	private List<Integer> nroRepuestos = new ArrayList<Integer>();
	private List<TallerDTO> obtenerListaTaller;
	private Map<String , Integer> listaTaller;
	
	/**
	 * 
	 */
	
	@PostConstruct
	public void iniciar(){
		
		ordenTrabajoNueva= new OrdenTrabajoDTO(); 
		if(FacesContext.getCurrentInstance().isPostback()){
			return;
		}
		ServicioService servicio = new ServicioService();
		setListadoServiciosObtenidos(servicio.obtenerServicios());
		listadoServicios = new LinkedHashMap<String, Integer>();
		for (ServicioDTO s : listadoServiciosObtenidos) {
			listadoServicios.put(s.getServicioDescripcion(), s.getIdServicio());
		}
		RepuestoService respuesto = new RepuestoService();
		setListadoRepuestosObtenidos(respuesto.obtenerTodosRepuestos());
		listadoRepuestos = new LinkedHashMap<String, Integer>();
		for (RepuestoDTO r: listadoRepuestosObtenidos) {
			listadoRepuestos.put(r.getDescripcion(),r.getIdRepuesto());
		}
		
		for (int i = 1; i < 20; i++) {
			nroRepuestos.add(i);
		}
		
		TallerService taller = new TallerService();
		setObtenerListaTaller(taller.obtenerTalleres());
		//Codigo que para enviar la lista de tipo de usuarios como par de datos 
		listaTaller = new LinkedHashMap<String, Integer>();
		for (TallerDTO t: obtenerListaTaller) {
			listaTaller.put(t.getTallerDescripcion(), t.getIdTaller());
					
		}
		////////////////////////////////////////////////////////////////////////
		OrdenTrabajoService ordenServicio2 = new  OrdenTrabajoService();
		setIdMaximoOTNuevo(ordenServicio2.obtenerIdMaximoOrdenes() + 1);
		
		
		
		
		
		inicializar();
	}
	
	public void inicializar(){
		
		clienteSeleccionadoOT = null;
		vehiculoSeleccionadoOT = null;
		listaVehiculosAsociados = null;
		listaVehiculosAsociados1 = null;
		
//		listaRepuestosSel = null;
//		listaRepuestosSel = null;
//		listaRepuestosSelEnGrilla = null;
//		listaServiciosSelEnGrilla = null;
//		
//		precioOTTotalCalculado = 0;
//		precioOTTotalFinal = 0;

	}
	
	public void listenerQuitarServicio(ServicioDTO servicioQuitarSeleccion){

		setServicioPorQuitar(servicioQuitarSeleccion.getIdServicio());
		setServicioPrecio(servicioQuitarSeleccion.getPrecioListaServicio());
		
	}
	
	public void confirmarQuitarServicioGrilla(){	
		setServiciosSumaTotalPrecio(serviciosSumaTotalPrecio - getServicioPrecio());
		setPrecioOTTotalCalculado(precioOTTotalCalculado - getServicioPrecio());

		for (int i = 0; i < listaServiciosSelEnGrilla.size(); i++) {
			if(listaServiciosSelEnGrilla.get(i).getIdServicio() == servicioPorQuitar){
				listaServiciosSelEnGrilla.remove(i);
			}
		}

		precioOTTotalFinal = precioOTTotalCalculado;
		descuentoAplicado = 0;
	}
	
	public void listarClientes(){
		
		UsuarioService cliente = new UsuarioService();
		setListaClientesObtenidos(cliente.obtenerTodosUsuarios());

	}
	
	public void listarPaquetes(){
		
		PaqueteService paquete = new PaqueteService();
		setListaPaquetesObtenidos(paquete.obtenerPaquetes());

	}
	
	public void obtenerClientesPorFiltros(){
		
		UsuarioService cliente = new UsuarioService();
		setListaClientesObtenidos(cliente.obtenerClientesBuscados(getRutBuscado(),getNombreBuscado()));

	}
	
	public void obtenerPaquetesPorFiltros(){
		
		PaqueteService paquete = new PaqueteService();
		setListaPaquetesObtenidos(paquete.obtenerPaquetesBuscados(getIdPaqueteBuscado(),getNombrePaqueteBuscado()));
	}
	
	public void buscarListener() { 
		if(listaClientesObtenidos.isEmpty()){
			FacesContext context = FacesContext.getCurrentInstance();  		        
	        context.addMessage(null, new FacesMessage("Informacion", "Cliente no existe en los Registros, Debe agregar Cliente Nuevo."));
		}
	}
	
	
	
	public void seleccionarClienteBusqueda(int clienteSeleccionado){
		
		UsuarioService cliente = new UsuarioService();
		setClienteSeleccionadoOT(cliente.cargarUsuarioEditar(clienteSeleccionado));
		vehiculoSeleccionadoOT= null;
		setDesabilitado(false);
		

	}
	
public void seleccionarPaqueteBusqueda(int paqueteSeleccionado){
		
		PaqueteService paquete = new PaqueteService();
		setPaqueteAsignadoOT(paquete.traerPaqueteEditar(paqueteSeleccionado));
		precioOTTotalCalculado = precioOTTotalCalculado + paqueteAsignadoOT.getPrecioTotal();

	}
	
	public void agregarServicio(){
		
		if(listaServiciosSel.size()>0){
			for (String serAux : listaServiciosSel) {
				ServicioService servicio = new ServicioService();
				listaServiciosSelEnGrilla.add(servicio.traerServicioEditar(Integer.parseInt(serAux)));
				
			}
			precioOTTotalCalculado = precioOTTotalCalculado - serviciosSumaTotalPrecio;
			serviciosSumaTotalPrecio = 0;
			for (ServicioDTO sr : listaServiciosSelEnGrilla) {
				serviciosSumaTotalPrecio = serviciosSumaTotalPrecio + sr.getPrecioListaServicio();
				precioOTTotalCalculado= precioOTTotalCalculado + sr.getPrecioListaServicio();
			}
			listaServiciosSel.clear();
			precioOTTotalFinal = precioOTTotalCalculado;
			
		}
	}
	
	public void seleccionarVehiculoBusqueda(int vehiculoSeleccionado){
		VehiculoService vehiculoSel = new VehiculoService();
		setVehiculoSeleccionadoOT(vehiculoSel.buscarVehiculoPorId(vehiculoSeleccionado));
		
	}
	
	public void listarVehiculosPorCliente(){
		VehiculoService vehiculo = new VehiculoService();
		setListaVehiculosAsociados1(vehiculo.vehiculosAsociadosPorCliente(clienteSeleccionadoOT.getIdUsuario()));
	}
	
	public void agregarRepuesto(){
		
		if(listaRepuestosSel.size()>0){
			for (String repAux : listaRepuestosSel) {
				RepuestoService repuesto = new RepuestoService();
				listaRepuestosSelEnGrilla.add(repuesto.cargarRepuestoEditar(Integer.parseInt(repAux)));
				
			}
			precioOTTotalCalculado = precioOTTotalCalculado - repuestosSumaTotalPrecio;
			repuestosSumaTotalPrecio = 0;
			for (RepuestoDTO r : listaRepuestosSelEnGrilla) {
				repuestosSumaTotalPrecio = repuestosSumaTotalPrecio + r.getPrecioRepuestoFinal();
				precioOTTotalCalculado = precioOTTotalCalculado + r.getPrecioRepuestoFinal();
			}
			listaRepuestosSel.clear();
			listaRepuestosSel = null;
			precioOTTotalFinal = precioOTTotalCalculado;
			
		}
		
	 }
	
	public void limpiarDatosServicio(){
		this.listaServiciosSel = Collections.emptyList();
	}
	
	public void limpiarDatosRepuesto(){
		this.listaRepuestosSel = Collections.emptyList();
	}
	
	public void listenerQuitarRepuesto(RepuestoDTO repuestoQuitarSeleccion){

		setRepuestoPorQuitar(repuestoQuitarSeleccion.getIdRepuesto());
		setRepuestoPrecio(repuestoQuitarSeleccion.getPrecioRepuesto());
		
	}
	
	public void confirmarQuitarRepuestoGrilla(){	
		setRepuestosSumaTotalPrecio(repuestosSumaTotalPrecio - getRepuestoPrecio());
		setPrecioOTTotalCalculado(precioOTTotalCalculado - getRepuestoPrecio());
		
		for (int i = 0; i < listaRepuestosSelEnGrilla.size(); i++) {
			if(listaRepuestosSelEnGrilla.get(i).getIdRepuesto() == repuestoPorQuitar){
				listaRepuestosSelEnGrilla.remove(i);
			}
		}

		precioOTTotalFinal = precioOTTotalCalculado;
		descuentoAplicado = 0;
	}
	
	public void aplicarDescuento(){
		precioOTTotalFinal= precioOTTotalCalculado - descuentoAplicado;
	}
	
	public void reCalcularPrecioPorItem(int idRepuesto){
		
		precioOTTotalFinal =  0;
		precioOTTotalCalculado = precioOTTotalCalculado - repuestosSumaTotalPrecio;
	
		for (int i = 0; i < listaRepuestosSelEnGrilla.size(); i++) {
			if(listaRepuestosSelEnGrilla.get(i).getIdRepuesto() == idRepuesto){
				
				setRepuestosSumaTotalPrecio(repuestosSumaTotalPrecio - listaRepuestosSelEnGrilla.get(i).getPrecioRepuestoFinal());
				setPrecioOTTotalCalculado(precioOTTotalCalculado - repuestosSumaTotalPrecio);
				
				listaRepuestosSelEnGrilla.get(i).setPrecioRepuestoFinal(listaRepuestosSelEnGrilla.get(i).getPrecioRepuesto() * listaRepuestosSelEnGrilla.get(i).getCantidad());
				
				repuestosSumaTotalPrecio = repuestosSumaTotalPrecio +  listaRepuestosSelEnGrilla.get(i).getPrecioRepuesto() * listaRepuestosSelEnGrilla.get(i).getCantidad();
				precioOTTotalCalculado = precioOTTotalCalculado + repuestosSumaTotalPrecio;
				precioOTTotalFinal = precioOTTotalCalculado;
			}
		}
	}
	
	
	public void crearPDF(){
		
		try {
			
			Document document = new Document();
			 PdfWriter.getInstance(document,
		                new FileOutputStream("f:\\HelloWorld.pdf"));

		            document.open();
		            document.add(new Paragraph("A Hello World PDF document."));
		            document.close(); // no need to close PDFwriter?

			
			
		} catch (Exception e) {
			throw new RuntimeException("Imprmir en PDF.",e);   
		}
		
		
	}
	
	public String guardarOT(){
		
		try {
			
			ordenTrabajoNueva.setIdUsuario(clienteSeleccionadoOT.getIdUsuario());
			ordenTrabajoNueva.setIdVehiculo(vehiculoSeleccionadoOT.getIdVehiculo());
			if(paqueteAsignadoOT != null){
			ordenTrabajoNueva.setIdPaqueteMantencion(paqueteAsignadoOT.getIdPaqueteMantencion());
			}
			ordenTrabajoNueva.setPrecioTotal(precioOTTotalFinal);
			
			
			SimpleDateFormat dateformatJava = new SimpleDateFormat("dd-MM-yyyy");
			ordenTrabajoNueva.setFechaIngreso(dateformatJava.format(ordenTrabajoNueva.getFechaIngresoTrans()));
			ordenTrabajoNueva.setFechaEntrega(dateformatJava.format(ordenTrabajoNueva.getFechaEntregaTrans()));
			
			OrdenTrabajoService ordenServicio = new  OrdenTrabajoService();
			ordenTrabajoNueva.setIdOrdenDeTrabajo(ordenServicio.obtenerIdMaximoOrdenes() + 1);
			
			//llamada a metodo para guardar en tabla principal 
			OrdenTrabajoService orden = new  OrdenTrabajoService();
			OrdenTrabajoService orden1 = new  OrdenTrabajoService();
			OrdenTrabajoService orden2 = new  OrdenTrabajoService();
			if(orden.registroOrdenTrabajoNueva(ordenTrabajoNueva)){
				orden1.registroOrdenTrabajoNuevaRepuestosSeleccionados(listaRepuestosSelEnGrilla, ordenTrabajoNueva.getIdOrdenDeTrabajo());
				orden2.registroOrdenTrabajoNuevaServiciosSeleccionados(listaServiciosSelEnGrilla, ordenTrabajoNueva.getIdOrdenDeTrabajo());
				return "/genericas/bandejaUsuario.xhtml?faces-redirect=true";
			}else{
				return "formOrdenDeTrabajo.xhtml?faces-redirect=true";
			}

		} catch (Exception e) {
			throw new RuntimeException("registrar Orden de Trabajo nueva ManageBean.",e);
		}
	}
	
	public void limpiarPaqueteSeleccionado(){
		precioOTTotalCalculado = precioOTTotalCalculado - paqueteAsignadoOT.getPrecioTotal();
		paqueteAsignadoOT = null;
		
	}
	

	public FormOrdenDeTrabajoBean() {
	
	}

	public List<UsuarioDTO> getListaClientesObtenidos() {
		return listaClientesObtenidos;
	}

	public void setListaClientesObtenidos(List<UsuarioDTO> listaClientesObtenidos) {
		this.listaClientesObtenidos = listaClientesObtenidos;
	}

	

	public String getRutBuscado() {
		return rutBuscado;
	}

	public void setRutBuscado(String rutBuscado) {
		this.rutBuscado = rutBuscado;
	}

	public String getNombreBuscado() {
		return nombreBuscado;
	}

	public void setNombreBuscado(String nombreBuscado) {
		this.nombreBuscado = nombreBuscado;
	}

	public UsuarioDTO getClienteSeleccionadoOT() {
		return clienteSeleccionadoOT;
	}

	public void setClienteSeleccionadoOT(UsuarioDTO clienteSeleccionadoOT) {
		this.clienteSeleccionadoOT = clienteSeleccionadoOT;
	}

	public boolean isDesabilitado() {
		return desabilitado;
	}

	public void setDesabilitado(boolean desabilitado) {
		this.desabilitado = desabilitado;
	}

	public List<VehiculoDTO> getListaVehiculosAsociados() {
		return listaVehiculosAsociados;
	}

	public void setListaVehiculosAsociados(List<VehiculoDTO> listaVehiculosAsociados) {
		this.listaVehiculosAsociados = listaVehiculosAsociados;
	}

	public VehiculoDTO getVehiculoSeleccionadoOT() {
		return vehiculoSeleccionadoOT;
	}

	public void setVehiculoSeleccionadoOT(VehiculoDTO vehiculoSeleccionadoOT) {
		this.vehiculoSeleccionadoOT = vehiculoSeleccionadoOT;
	}

	public List<VehiculoDTO> getListaVehiculosAsociados1() {
		return listaVehiculosAsociados1;
	}

	public void setListaVehiculosAsociados1(List<VehiculoDTO> listaVehiculosAsociados1) {
		this.listaVehiculosAsociados1 = listaVehiculosAsociados1;
	}

	public OrdenTrabajoDTO getOrdenTrabajoNueva() {
		return ordenTrabajoNueva;
	}

	public void setOrdenTrabajoNueva(OrdenTrabajoDTO ordenTrabajoNueva) {
		this.ordenTrabajoNueva = ordenTrabajoNueva;
	}

	public boolean isDesabilitadoOrden() {
		return desabilitadoOrden;
	}

	public void setDesabilitadoOrden(boolean desabilitadoOrden) {
		this.desabilitadoOrden = desabilitadoOrden;
	}

	public List<String> getListaServiciosSel() {
		return listaServiciosSel;
	}

	public void setListaServiciosSel(List<String> listaServiciosSel) {
		this.listaServiciosSel = listaServiciosSel;
	}

	public Map<String, Integer> getListadoServicios() {
		return listadoServicios;
	}

	public void setListadoServicios(Map<String, Integer> listadoServicios) {
		this.listadoServicios = listadoServicios;
	}

	public List<ServicioDTO> getListaServiciosSelEnGrilla() {
		return listaServiciosSelEnGrilla;
	}

	public void setListaServiciosSelEnGrilla(
			List<ServicioDTO> listaServiciosSelEnGrilla) {
		this.listaServiciosSelEnGrilla = listaServiciosSelEnGrilla;
	}

	public List<ServicioDTO> getListadoServiciosObtenidos() {
		return listadoServiciosObtenidos;
	}

	public void setListadoServiciosObtenidos(
			List<ServicioDTO> listadoServiciosObtenidos) {
		this.listadoServiciosObtenidos = listadoServiciosObtenidos;
	}

	public int getServicioPorQuitar() {
		return servicioPorQuitar;
	}

	public void setServicioPorQuitar(int servicioPorQuitar) {
		this.servicioPorQuitar = servicioPorQuitar;
	}

	public int getServiciosSumaTotalPrecio() {
		return serviciosSumaTotalPrecio;
	}

	public void setServiciosSumaTotalPrecio(int serviciosSumaTotalPrecio) {
		this.serviciosSumaTotalPrecio = serviciosSumaTotalPrecio;
	}

	public int getServicioPrecio() {
		return servicioPrecio;
	}

	public void setServicioPrecio(int servicioPrecio) {
		this.servicioPrecio = servicioPrecio;
	}

	public List<String> getListaRepuestosSel() {
		return listaRepuestosSel;
	}

	public void setListaRepuestosSel(List<String> listaRepuestosSel) {
		this.listaRepuestosSel = listaRepuestosSel;
	}

	public List<RepuestoDTO> getListaRepuestosSelDto() {
		return listaRepuestosSelDto;
	}

	public void setListaRepuestosSelDto(List<RepuestoDTO> listaRepuestosSelDto) {
		this.listaRepuestosSelDto = listaRepuestosSelDto;
	}

	public List<RepuestoDTO> getListaRepuestosSelEnGrilla() {
		return listaRepuestosSelEnGrilla;
	}

	public void setListaRepuestosSelEnGrilla(
			List<RepuestoDTO> listaRepuestosSelEnGrilla) {
		this.listaRepuestosSelEnGrilla = listaRepuestosSelEnGrilla;
	}

	public List<RepuestoDTO> getListadoRepuestosObtenidos() {
		return listadoRepuestosObtenidos;
	}

	public void setListadoRepuestosObtenidos(
			List<RepuestoDTO> listadoRepuestosObtenidos) {
		this.listadoRepuestosObtenidos = listadoRepuestosObtenidos;
	}

	public Map<String, Integer> getListadoRepuestos() {
		return listadoRepuestos;
	}

	public void setListadoRepuestos(Map<String, Integer> listadoRepuestos) {
		this.listadoRepuestos = listadoRepuestos;
	}

	public int getRepuestosSumaTotalPrecio() {
		return repuestosSumaTotalPrecio;
	}

	public void setRepuestosSumaTotalPrecio(int repuestosSumaTotalPrecio) {
		this.repuestosSumaTotalPrecio = repuestosSumaTotalPrecio;
	}

	public int getRepuestoPrecio() {
		return repuestoPrecio;
	}

	public void setRepuestoPrecio(int repuestoPrecio) {
		this.repuestoPrecio = repuestoPrecio;
	}

	public int getRepuestoPorQuitar() {
		return repuestoPorQuitar;
	}

	public void setRepuestoPorQuitar(int repuestoPorQuitar) {
		this.repuestoPorQuitar = repuestoPorQuitar;
	}

	public int getPrecioOTTotalCalculado() {
		return precioOTTotalCalculado;
	}

	public void setPrecioOTTotalCalculado(int precioOTTotalCalculado) {
		this.precioOTTotalCalculado = precioOTTotalCalculado;
	}

	public int getPrecioOTTotalFinal() {
		return precioOTTotalFinal;
	}

	public void setPrecioOTTotalFinal(int precioOTTotalFinal) {
		this.precioOTTotalFinal = precioOTTotalFinal;
	}

	public int getDescuentoAplicado() {
		return descuentoAplicado;
	}

	public void setDescuentoAplicado(int descuentoAplicado) {
		this.descuentoAplicado = descuentoAplicado;
	}

	public int getIdMaximoOTNuevo() {
		return idMaximoOTNuevo;
	}

	public void setIdMaximoOTNuevo(int idMaximoOTNuevo) {
		this.idMaximoOTNuevo = idMaximoOTNuevo;
	}

	public List<Integer> getNroRepuestos() {
		return nroRepuestos;
	}

	public void setNroRepuestos(List<Integer> nroRepuestos) {
		this.nroRepuestos = nroRepuestos;
	}

	public PaqueteDTO getPaqueteAsignadoOT() {
		return paqueteAsignadoOT;
	}

	public void setPaqueteAsignadoOT(PaqueteDTO paqueteAsignadoOT) {
		this.paqueteAsignadoOT = paqueteAsignadoOT;
	}

	public List<PaqueteDTO> getListaPaquetesObtenidos() {
		return listaPaquetesObtenidos;
	}

	public void setListaPaquetesObtenidos(List<PaqueteDTO> listaPaquetesObtenidos) {
		this.listaPaquetesObtenidos = listaPaquetesObtenidos;
	}

	public int getIdPaqueteBuscado() {
		return idPaqueteBuscado;
	}

	public void setIdPaqueteBuscado(int idPaqueteBuscado) {
		this.idPaqueteBuscado = idPaqueteBuscado;
	}

	public String getNombrePaqueteBuscado() {
		return nombrePaqueteBuscado;
	}

	public void setNombrePaqueteBuscado(String nombrePaqueteBuscado) {
		this.nombrePaqueteBuscado = nombrePaqueteBuscado;
	}

	public List<TallerDTO> getObtenerListaTaller() {
		return obtenerListaTaller;
	}

	public void setObtenerListaTaller(List<TallerDTO> obtenerListaTaller) {
		this.obtenerListaTaller = obtenerListaTaller;
	}

	public Map<String , Integer> getListaTaller() {
		return listaTaller;
	}

	public void setListaTaller(Map<String , Integer> listaTaller) {
		this.listaTaller = listaTaller;
	}
	
	
	
	

}
